import axios from "axios";

const service = axios.create({
  baseURL: 'http://localhost:3000',
  timeout: 5000
})

service.interceptors.request.use(
  config => {
    const token = localStorage.getItem('token')
    if (token) {
      config.headers['Authorization'] = `Bearer ${token}`
    }
    return config;
  },
  error => {
    return Promise.reject(error);
  }
)
service.interceptors.response.use(
  response => {
    // 对响应数据做点什么
    return response.data;
  },
  error => {
    // 对响应错误做点什么
    console.error('Response error:', error);
    if (error.response) {
      // 这里可以处理HTTP状态码异常的情况
      switch (error.response.status) {
        case 401:
          // 未授权，跳转到登录页
          break;
        case 403:
          // 禁止访问
          break;
        case 404:
          // 资源未找到
          break;
        default:
          console.error('Unhandled error:', error.response.status);
      }
    }
    return Promise.reject(error);
  }
);

export default service;